package com.victualler.core.config.permission.service;

import com.victualler.core.base.service.BaseService;
import com.victualler.core.config.permission.entity.PermissionInfoDao;
import com.victualler.core.config.permission.entity.RoleInfoDao;
import com.victualler.core.config.permission.repository.PermissionInfoQueryRepository;
import com.victualler.core.config.permission.repository.PermissionInfoRepository;

import java.util.List;


/**
 * @author: Guoshichang
 * @discription:
 */
public interface PermissionInfoService extends BaseService<PermissionInfoDao, PermissionInfoRepository,PermissionInfoQueryRepository>{

    /**
     * @author Guoshichang
     * @since 19:06 on 2018/7/6.
     * @param roleInfoList
     * @Function 根据角色列表获取权限列表
     */
    public List<PermissionInfoDao> getPermissionInfoByRoleId(List<RoleInfoDao> roleInfoList);


    /**
     * @author Guoshichang
     * @since 16:30 on 2018/8/28.
     * @param name 权限名称
     * @return List
     * @Function 根据权限名称模糊查询
     */
    public List<PermissionInfoDao> getByName(String name);

    /**
     * @author Guoshichang
     * @since 21:12 on 2018/9/9.
     * @param roleId 双
     * @return List
     * @Function
     */
    public List<PermissionInfoDao> getByRoleId(Long roleId) ;

    /**
     * @author Guoshichang
     * @since 21:12 on 2018/9/9.
     * @param roleId 双
     * @return List
     * @Function
     */
    public List<PermissionInfoDao> notInByRoleId(Long roleId) ;
}
